package ace.cmp.security.core.impl.model.dto;

import java.util.Map;
import java.util.Set;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @author caspar
 * @date 2023/7/31 17:23 代表资源服务解析token的结果
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class AceDefaultIntrospectPrincipalDto implements AceIntrospectPrincipalDto {
  private String principalType;
  private Set<String> authorities;
  private Map<String, Object> attributes;
  private String id;

  @Override
  public String getId() {
    return this.id;
  }

  @Override
  public String getPrincipalType() {
    return principalType;
  }

  @Override
  public Set<String> getAuthorities() {
    return this.authorities;
  }

  @Override
  public Map<String, Object> getAttributes() {
    return this.attributes;
  }
}
